#ifndef TestState_H
#define TestState_H

/*
#include "NxOgre.h"
#include <Ogre.h>

#include "GameLevel.h"
#include "OgreOSMScene.h"

class myHitReport : public NxOgre::CharacterHitReport {
   
	NxOgre::CharacterHitReport::Response onActor(NxOgre::Character*, NxOgre::Actor*, NxOgre::Shape*, NxOgre::ActorGroup*, const NxControllerShapeHit&) {
      // actor hit

      return NxOgre::CharacterHitReport::RS_Push;
   }

   NxOgre::CharacterHitReport::Response onCharacterHit(NxOgre::Character*, NxOgre::Actor*, NxOgre::Shape*, NxOgre::ActorGroup*, const NxControllerShapeHit&) {
      // character hit
      
      return NxOgre::CharacterHitReport::RS_Push;
   }
};

class TestState : public GameLevel {
public:
    ~TestState( void );

    void enter( void );
    void exit( void );

    void pause( void );
    void resume( void );
    void update( unsigned long lTimeElapsed );

    void keyPressed( const OIS::KeyEvent &e );
    void keyReleased( const OIS::KeyEvent &e );

	void onMousePressedLeft(const OIS::MouseEvent &e);

    void mouseMoved( const OIS::MouseEvent &e );
    void mouseReleased( const OIS::MouseEvent &e, OIS::MouseButtonID id );

    static TestState* getSingletonPtr( void );
private:
    TestState( void ) { }
    TestState( const TestState& ) { }
    TestState & operator = ( const TestState& );

    Ogre::Overlay        *mInfoOverlay;
    Ogre::Overlay        *mPlayOverlay;
    Ogre::Overlay        *mMouseOverlay;
    Ogre::OverlayElement *mMousePointer;
    Ogre::OverlayElement *mInfoInstruction;
    Ogre::OverlayElement *mInfoNotification;
	Ogre::SceneNode		*curSelectObj;

    OIS::Keyboard        *mInputDevice;

	// NxOgre
	NxOgre::World		*nxWorld;
	NxOgre::Scene		*nxScene;
	NxOgre::Body		*mahninja;
	NxOgre::Character	*mahchar;
	NxOgre::ActorGroup *agMainPlayer;

	bool *toggleLine;

    static TestState *mTestState;
};
*/
#endif